package com.yssoft.mapper.purchase;

import com.yssoft.entity.core.TEnterprise;
import com.yssoft.entity.purchase.TPurchaseInfo;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;
import java.util.Map;

public interface TPurchaseInfoMapper extends Mapper<TPurchaseInfo>{
    
    /**
     * 条件查询
     * @param param
     * @return
     */
    List<Map<String,Object>> selectByConditions(Map<String,Object> param);
    
    /**
     * 保存订单信息
     * @param purchaseInfo
     * @return
     */
    int insertPurchaseInfo(TPurchaseInfo purchaseInfo);

    /**
     * 查询订单已采购订单
     * 戈超--2018-5-2
     * @param param
     * @return
     */
	List<Map<String, Object>> queryPurchaseList(Map<String, Object> param);
    
    /**
     * 根据订单详情查询订单
     * @param purchaseOrderDetailId
     * @return
     */
    TPurchaseInfo selectByDetailId(String purchaseOrderDetailId);
    
    /**
     * @方法名称: selectPurStatistics
     * @功能描述: 获取采购记录
     * @作者: 洪丰
     * @创建时间:2018年6月12日 上午10:13:45
     * @param param
     * @return List<Map<String,Object>>
     */
    List<Map<String, Object>> selectPurStatistics(Map<String, Object> param);
    
    /**
     * @方法名称: selectPurStatisticsCount
     * @功能描述: 获取采购记录总数
     * @作者: 洪丰
     * @创建时间:2018年6月12日 上午10:18:30
     * @param param
     * @return Integer
     */
    int selectPurStatisticsCount(Map<String, Object> param);
    
    /**
    * @方法名: selectMonthGroupByByEntList
    * @创建人: 陈翼东
    * @时间: 18-6-14 下午4:01
    * @参数: [entList]
    * @返回值: java.util.List<com.yssoft.entity.purchase.TPurchaseInfo>
    * @说明: 查询企业中销售单按照月份分组
    */
    List<Map<String,Object>> selectMonthGroupByByEntList(@Param("entList") List<TEnterprise> entList);
}